Michael Albinus [Tue, 16 May 2017 09:22:33 +0000 (11:22 +0200)]
* lisp/net/tramp.el: Avoid recursive load of Tramp. (Bug#26943)
Noam Postavsky [Fri, 12 May 2017 01:06:33 +0000 (21:06 -0400)]
Make `indent-line-to' respect field boundaries (Bug#26891)
* lisp/indent.el (indent-line-to): Use `back-to-indentation' instead
of `backward-to-indentation'.
Noam Postavsky [Thu, 11 May 2017 22:12:40 +0000 (18:12 -0400)]
Make sure indent-sexp stops at end of sexp (Bug#26878)
* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Check endpos before
indenting.
* test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp-stop): New
test.
Glenn Morris [Tue, 16 May 2017 01:01:30 +0000 (21:01 -0400)]
Stop some epg tests failing on rhel7 with gpg 2.0.22 (bug#23619)
* test/lisp/epg-tests.el (with-epg-tests):
Also set GNUPGHOME in the environment of child processes.
This avoids problems if gpg does not pass --homedir to spawned agent.
; Ref eg https://gpgtools.tenderapp.com/discussions/problems/29537-gpg2-doesnt-start-agent-properly-if-using-homedir
Glenn Morris [Tue, 16 May 2017 00:56:46 +0000 (20:56 -0400)]
Add oldxmenu to system-configuration-features
* configure.ac (HAVE_OLDXMENU): New.
(emacs_config_features): Add oldxmenu.
Ted Zlatanov [Mon, 15 May 2017 20:06:08 +0000 (16:06 -0400)]
* .gitlab-ci.yml: Adjust disclaimer as per RMS.
Eli Zaretskii [Mon, 15 May 2017 19:45:57 +0000 (22:45 +0300)]
Remove unneeded stuff from nt/inc/sys/time.h
* nt/inc/sys/time.h (_TIMEVAL_DEFINED, struct timevat, timerisset)
(timercmp, timerclear): Don't define. Instead, include the system
header sys/time.h, and add only the interval timers stuff. This
avoids compiler warnings about 'gettimeofday's prototype, and also
avoids redefinition of macros from system headers.
Paul Eggert [Mon, 15 May 2017 01:44:36 +0000 (18:44 -0700)]
Fix address violation found by AddressSanitizer
* src/process.c (connect_network_socket):
Use struct sockaddr_storage, not struct sockaddr_in, to store info
about a socket address. Problem reported by Philipp Stephani in:
http://lists.gnu.org/archive/html/emacs-devel/2017-05/msg00314.html
This fix is based on a patch by Philipp in:
http://lists.gnu.org/archive/html/emacs-devel/2017-05/msg00357.html
Gemini Lasswell [Sat, 13 May 2017 18:35:49 +0000 (11:35 -0700)]
Make edebug-step-in work on generic methods (Bug#22294)
* lisp/emacs-lisp/edebug.el (edebug-match-cl-generic-method-args):
New function to implement the edebug-form-spec property of
the symbol cl-generic-method-args.
(edebug-instrument-function): If the function is a generic
function, find and instrument all of its methods. Return a list
instead of a single symbol.
(edebug-instrument-callee): Now returns a list. Update docstring.
(edebug-step-in): Handle the list returned by edebug-instrument-callee.
* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Use name and
cl-generic-method-args in its Edebug spec.
* lisp/emacs-lisp/eieio-compat.el (defmethod): Use name and
cl-generic-method-args in its Edebug spec.
* lisp/subr.el (method-files): New function.
* test/lisp/subr-tests.el (subr-tests--method-files--finds-methods)
(subr-tests--method-files--nonexistent-methods): New tests.
Paul Eggert [Sun, 14 May 2017 19:39:26 +0000 (12:39 -0700)]
Merge from gnulib
This incorporates:
2017-05-14 same-inode: Adapt for windows-stat-inodes
2017-05-14 windows-stat-inodes: New module
2017-05-14 stat-time: Adapt for windows-stat-timespec
* lib/gnulib.mk.in: Regenerate.
* lib/stat-time.h, lib/sys_types.in.h, m4/sys_types_h.m4:
Copy from gnulib.
Eli Zaretskii [Sun, 14 May 2017 16:02:50 +0000 (19:02 +0300)]
Remove gettimeofday from w32 sources
* lib-src/ntlib.c (gettimeofday):
* nt/inc/sys/time.h (gettimeofday, struct timezone): Remove unused
function 'gettimeofday' and all of its supporting code.
Eli Zaretskii [Sun, 14 May 2017 14:53:39 +0000 (17:53 +0300)]
Fix the MS-Windows build
* nt/inc/sys/time.h (gettimeofday):
* src/w32.c (gettimeofday): Adjust signature to match Gnulib.
Paul Eggert [Sun, 14 May 2017 08:29:05 +0000 (01:29 -0700)]
Merge from gnulib
This incorporates:
2017-05-13 largefile: Simplify
2017-05-13 largefile: Improve and document
2017-05-13 truncate: New module
2017-05-13 windows-stat-timespec: New module
2017-05-13 windows-stat-override: New module
2017-05-11 getopt-posix: port to mingw
2017-05-11 gettimeofday: Increase precision on mingw
2017-05-10 time: Fix missing initialization of HAVE_TIMEZONE_T
2017-05-10 Implement a way to opt out from MSVC support
2017-05-09 tzset: Expand comment about TZ problem on native Windows
* build-aux/config.guess, lib/dup2.c, lib/fcntl.c, lib/fsync.c:
* lib/getdtablesize.c, lib/getopt.c, lib/gettimeofday.c:
* lib/mktime.c, lib/stat-time.h, lib/sys_stat.in.h, lib/unistd.in.h:
* lib/utimens.c, m4/gettimeofday.m4, m4/largefile.m4:
* m4/sys_stat_h.m4, m4/sys_time_h.m4, m4/time_h.m4, m4/time_rz.m4:
* m4/unistd_h.m4: Copy from gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
Marcin Borkowski [Sun, 14 May 2017 05:09:54 +0000 (07:09 +0200)]
Merge branch 'fix/bug-21072'
Ted Zlatanov [Wed, 26 Apr 2017 18:40:03 +0000 (14:40 -0400)]
* .gitlab-ci.yml: Add setup for GitLab CI builds.
Mark Oteiza [Sun, 14 May 2017 01:40:23 +0000 (21:40 -0400)]
; Revert "Adjust the edebug spec of if-let*"
This reverts commit
fd4b83ca7c20a68060772ec13aadbe29db612b3f.
Tak Kunihiro [Sat, 13 May 2017 17:25:39 +0000 (20:25 +0300)]
New minor mode 'pixel-scroll-mode'
* lisp/pixel-scroll.el: New file.
* etc/NEWS: Mention pixel-scroll-mode.
Philipp [Sat, 6 May 2017 20:23:03 +0000 (22:23 +0200)]
Make `old-style-backquotes' variable internal
* src/lread.c (load_warn_old_style_backquotes, Fload, read1)
(syms_of_lread): Rename `old-style-backquotes' to
`lread--old-style-backquotes', and clarify that it's for internal
use only.
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Rename
variable.
* test/src/lread-tests.el (lread-tests--old-style-backquotes): Add
unit test.
* emacs-lisp/bytecomp-tests.el
(bytecomp-tests--old-style-backquotes): Add unit test.
Philipp Stephani [Sat, 13 May 2017 10:28:48 +0000 (12:28 +0200)]
Improve unescaped character literal warnings
* src/lread.c (load_warn_unescaped_character_literals)
(syms_of_lread):
lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Improve
formatting of unescaped character literal warnings.
* test/src/lread-tests.el (lread-tests--unescaped-char-literals):
test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--unescaped-char-literals): Adapt unit tests.
Alan Mackenzie [Fri, 12 May 2017 21:11:49 +0000 (21:11 +0000)]
Fontify C++ for loop variable as variable, even when followed by parentheses
In the following: "for (auto *Friend : Class->friends()) {", "Friend" was
getting fontified as a function, due to insufficient checking of the tokens
between it and "()".
* lisp/progmodes/cc-langs.el (c-:-op-cont-tokens, c-:-op-cont-regexp): New
lang-consts/vars.
* lisp/progmodes/cc-engine.el (c-forward-declarator): After finding a putative
declarator's identifier, check for a ":" token inside a for's parentheses, and
abort the search for "(" if this is found.
Michael Albinus [Fri, 12 May 2017 16:36:41 +0000 (18:36 +0200)]
Make Tramp backward compatible
* lisp/net/tramp-cmds.el (tramp-change-syntax):
Set tramp-autoload cookie.
* lisp/net/tramp-compat.el: Run `tramp-change-syntax' at
startup, if necessary.
* lisp/net/tramp.el (tramp-syntax): Use `tramp-compat-user-error'.
(tramp-register-autoload-file-name-handlers): Do not mark
`operations' for `tramp-file-name-handler'.
(tramp-register-file-name-handlers): Remove also
`tramp-autoload-file-name-handler' for backward compatibility.
(tramp-register-foreign-file-name-handler): Use `delete-dups'.
* test/lisp/net/tramp-tests.el (tramp-change-syntax): Declare.
Noam Postavsky [Tue, 9 May 2017 07:38:49 +0000 (09:38 +0200)]
Modify `beginning-of-defun-comments'
* lisp/emacs-lisp/lisp.el (beginning-of-defun-comments): Try not to stop
in the middle of a multiline comment.
Noam Postavsky [Thu, 27 Apr 2017 21:13:33 +0000 (17:13 -0400)]
Fix elisp-tests-with-temp-buffer compilation
* test/lisp/emacs-lisp/lisp-tests.el (elisp-tests-with-temp-buffer):
Don't refer to the =!NAME= as "markers" since they produce variables
with just plain positions, not marker objects. Explicitly specify
that CONTENTS is evaluated at compile time. Don't re-evaluate
CONTENTS at runtime. Fix debug specification. Suppress warnings due
to BODY not using =!NAME= variables.
(elisp-test-point-position-regex): Rename from
`elisp-test-point-marker-regex'.
(mark-defun-test-buffer): Wrap in `eval-and-compile'.
Noam Postavsky [Thu, 20 Apr 2017 12:07:19 +0000 (14:07 +0200)]
* lisp/emacs-lisp/lisp.el (mark-defun): Simplify moving the point.
Marcin Borkowski [Fri, 31 Mar 2017 11:06:06 +0000 (13:06 +0200)]
Fix Bug#21072 and rework `mark-defun'
* test/lisp/progmodes/elisp-mode-tests.el (mark-defun-test-buffer):
New variable
(mark-defun-no-arg-region-inactive)
(mark-defun-no-arg-region-active)
(mark-defun-arg-region-active)
(mark-defun-pos-arg-region-inactive)
(mark-defun-neg-arg-region-inactive, mark-defun-bob): Add tests for
the new `mark-defun'.
* lisp/emacs-lisp/lisp.el (beginning-of-defun--in-emptyish-line-p):
New function.
(beginning-of-defun-comments): New function.
(mark-defun): Fix bug#21072, also rewrite large parts of `mark-defun'
to accept a numerical prefix argument.
Alfred M. Szmidt [Fri, 12 May 2017 08:44:07 +0000 (11:44 +0300)]
* lisp/mail/rmail.el (rmail-ignored-headers): Add 3 headers to ignore.
Copyright-paperwork-exempt: yes.
Eli Zaretskii [Fri, 12 May 2017 08:38:04 +0000 (11:38 +0300)]
Improve doc strings in net-utils.el
* lisp/net/net-utils.el (ifconfig, iwconfig, netstat, arp)
(route, traceroute, nslookup, ftp, smbclient)
(smbclient-list-shares, finger, whois)
(network-connection-to-service, network-service-connection)
(network-connection-reconnect): Improve doc strings.
Andrew Robbins [Fri, 12 May 2017 08:19:46 +0000 (11:19 +0300)]
Extend DNS lookup commands to allow specifying the name server
* lisp/net/net-utils.el (ffap-string-at-point): Removed due to
'net-utils-machine-at-point' obviating this autoloaded
function (Bug#25426).
(dig-program-options): New customization variable.
(nslookup-host, dns-lookup-host, run-dig): Can now specify
optional name server argument interactively (by prefix arg) and
non-interactively.
* etc/NEWS: Mention the extension of DNS lookup commands.
Glenn Morris [Fri, 12 May 2017 01:22:13 +0000 (21:22 -0400)]
Don't hard-code loaddefs files in lisp/Makefile
* lisp/Makefile.in (loaddefs): New variable.
(AUTOGENEL): Use $loaddefs, and include directory.
(bootstrap-clean): Update for AUTOGENEL change.
Katsumi Yamaoka [Thu, 11 May 2017 05:49:45 +0000 (05:49 +0000)]
Kill modified buffers silently when quitting (bug#26862)
* lisp/gnus/gnus-start.el (gnus-clear-system): Run do-auto-save to make
sure that latest drafts are saved, and kill modified buffers silently.
Perry E. Metzger [Wed, 10 May 2017 17:57:21 +0000 (20:57 +0300)]
Implement 1-based column numbering in mode line
* src/xdisp.c (decode_mode_spec): Implement the %C construct.
* lisp/bindings.el (column-number-indicator-zero-based): New
defcustom.
(mode-line-position): Use %C when
column-number-indicator-zero-based is nil.
* src/xdisp.c (syms_of_xdisp) <frame-title-format>:
* src/buffer.c (syms_of_buffer) <mode-line-format>:
* doc/lispref/modes.texi (%-Constructs):
* doc/lispref/frames.texi (Frame Titles): Document the %C
construct.
* doc/emacs/display.texi (Optional Mode Line): Document
'column-number-indicator-zero-based'.
* etc/NEWS: Mention 'column-number-indicator-zero-based' and the
%C construct.
Eli Zaretskii [Wed, 10 May 2017 17:06:15 +0000 (20:06 +0300)]
Ensure cursor's foreground color is in sync with 'default' face
* src/w32term.c (x_set_cursor_gc): Don't reuse cursor GC if its
foreground color is different from the background of the glyph
string's face. (Bug#26851)
Eli Zaretskii [Wed, 10 May 2017 16:58:06 +0000 (19:58 +0300)]
Fix vertical cursor motion when columns are of unequal size
* lisp/simple.el (line-move-finish): In line-move-visual mode, use
vertical-motion to move to the goal column, as the goal column
should in that case be interpreted in units of frame's canonical
character width. (Bug#26852)
Glenn Morris [Wed, 10 May 2017 06:20:52 +0000 (23:20 -0700)]
Fix finding test .el files
* test/Makefile.in (ELFILES): Exclude the data/ directory.
* test/src/lread-tests.el (lread-test-bug26837): Revert previous.
Tino Calancha [Wed, 10 May 2017 02:53:20 +0000 (11:53 +0900)]
Tweak a recent test
This test fails in my local machine because the data files
are compiled, and the test doesn't expect that.
* test/src/lread-tests.el (lread-test-bug26837): Match a suffix
ending with '.elc' when the data files are compiled.
Glenn Morris [Wed, 10 May 2017 01:31:46 +0000 (21:31 -0400)]
Put license information in each generated uni-*.el
* admin/unidata/unidata-gen.el (unidata-gen-file):
Get Copyright line from copyright.html.
Put information in file header, not separate README.
(unidata-gen-charprop): Mention the source location.
* lisp/international/README: Remove file.
Noam Postavsky [Sun, 23 Apr 2017 14:43:05 +0000 (10:43 -0400)]
Fix lisp-indent-region and indent-sexp (Bug#26619)
The new lisp-indent-region introduced in 2017-04-22 "Add new
`lisp-indent-region' that doesn't reparse the code." is broken because
it doesn't save the calculated indent amounts for already seen sexp
depths. Fix this by unifying the indent-sexp and lisp-indent-region
code. Furthermore, only preserve position 2 of the running parse
when the depth doesn't change.
* lisp/emacs-lisp/lisp-mode.el (lisp-ppss): Use an OLDSTATE that
corresponds with the start point when calling parse-partial-sexp.
(lisp-indent-state): New struct.
(lisp-indent-calc-next): New function, extracted from indent-sexp.
(indent-sexp, lisp-indent-region): Use it.
(lisp-indent-line): Take indentation, instead of parse state.
* test/lisp/emacs-lisp/lisp-mode-tests.el
(lisp-mode-tests--correctly-indented-sexp): New constant.
(lisp-indent-region, lisp-indent-region-defun-with-docstring):
(lisp-indent-region-open-paren, lisp-indent-region-in-sexp): New
tests.
Dmitry Gutov [Wed, 10 May 2017 00:34:16 +0000 (03:34 +0300)]
Simplify url-encode-url and add a test
* lisp/url/url-util.el (url-encode-url): Simplify.
url-generic-parse-url copes with multibyte strings just fine
(https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24117#185).
* test/lisp/url/url-parse-tests.el
(url-generic-parse-url/multibyte-host-and-path): New test.
Glenn Morris [Tue, 9 May 2017 23:47:16 +0000 (19:47 -0400)]
More informative error when required feature missing
* src/fns.c (Frequire): Include file name in missing feature error.
* doc/lispref/loading.texi (Named Features): Don't quote actual error.
Glenn Morris [Tue, 9 May 2017 23:44:09 +0000 (19:44 -0400)]
Put re-loaded file back at start of load-history (bug#26837)
* src/lread.c (readevalloop): Fix the "whole buffer" check to
operate in the correct buffer.
(Feval_buffer): Move point back to the start after checking
for lexical binding.
* test/src/lread-tests.el (lread-test-bug26837): New test.
* test/data/somelib.el, test/data/somelib2.el: New test data files.
Glenn Morris [Tue, 9 May 2017 17:03:04 +0000 (13:03 -0400)]
Don't duplicate autoload code in package.el
* lisp/emacs-lisp/autoload.el (autoload-rubric): Add a package option.
* lisp/emacs-lisp/package.el (autoload-rubric): Declare.
(package-autoload-ensure-default-file): Use autoload-rubric.
Michael Albinus [Tue, 9 May 2017 12:35:56 +0000 (14:35 +0200)]
* test/lisp/net/tramp-tests.el: Keep additional test.
Marcin Borkowski [Tue, 14 Feb 2017 10:30:36 +0000 (11:30 +0100)]
Add elisp-tests-with-temp-buffer, a new testing macro
* test/lisp/emacs-lisp/lisp-tests.el
(elisp-test-point-marker-regex) New variable.
(elisp-tests-with-temp-buffer): New macro to help test functions
moving the point and/or mark.
Noam Postavsky [Tue, 9 May 2017 02:17:53 +0000 (22:17 -0400)]
Revert "Output number of characters added to file (Bug#354)"
The extra message text turned out to be quite annoying in practice,
and is generally more trouble than it's worth. Also revert several
related changes.
Partially revert "Handle `write-region' messages in Tramp properly"
Revert "New var write-region-verbose, default nil"
Revert "* src/fileio.c (write_region): Don't say "1 characters". (Bug#26796)"
Revert "Minor tuneup of write-region change"
Revert "Adjust write-region so file name is at the beginning again"
Revert "Fix handling of non-integer START param to write-region"
Revert "Output number of characters added to file (Bug#354)"
* doc/emacs/files.texi (Misc File Ops):
* etc/NEWS:
* lisp/epa-file.el (epa-file-write-region):
* lisp/gnus/mm-util.el (mm-append-to-file):
* lisp/jka-compr.el (jka-compr-write-region):
* lisp/net/ange-ftp.el (ange-ftp-write-region):
* lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
* lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
* lisp/net/tramp.el (tramp-handle-write-region-message):
* src/fileio.c (write_region, syms_of_fileio):
* test/lisp/net/tramp-tests.el (tramp-test10-write-region): Remove
extra characters from file writing messages.
Ken Brown [Mon, 8 May 2017 19:11:23 +0000 (15:11 -0400)]
Skip a test from filenotify-tests.el on Cygwin
* test/lisp/filenotify-tests.el (file-notify-test02-rm-watch):
Skip the last part of the test on Cygwin; it fails due to timing
issues.
(file-notify--test-read-event): Remove `sit-for' that was added
for Cygwin.
Paul Eggert [Mon, 8 May 2017 17:46:21 +0000 (10:46 -0700)]
Merge from gnulib
This incorporates:
2017-05-08 intprops: don’t depend on ‘verify’
2017-05-07 utimens: on native Windows, improve resolution if fd < 0
2017-05-07 utimens: Improve error code on native Windows
* lib/intprops.h, lib/utimens.c: Copy from gnulib.
Wilson Snyder [Mon, 8 May 2017 17:44:47 +0000 (13:44 -0400)]
Fix various verilog-mode.el issues.
* lisp/progmodes/verilog-mode.el (verilog-read-decls): Fix SystemVerilog
2012 import breaking AUTOINST. Reported by Johannes Schaefer.
(verilog-auto-wire-type, verilog-insert-definition): Fix AUTOWIRE using
logic in top-level non-SystemVerilog module, bug1142. Reported by Marcin K.
(verilog-define-abbrev-table) (verilog-mode-abbrev-table): Don't expand
abbrev inside comment/strings, bug1102. Reported by Slava Yuzhaninov.
(verilog-auto): Fix AUTORESET widths pulling from AUTOREGINPUT,
msg2143. Reported by Galen Seitz.
(verilog-modify-compile-command): Fix expansion of __FLAGS__ when
compile-command is globally set, bug1119. Reported by Galen Seitz.
Michael Albinus [Mon, 8 May 2017 15:27:50 +0000 (17:27 +0200)]
Handle `write-region' messages in Tramp properly
* lisp/net/tramp.el (tramp-handle-write-region-message): New defsubst.
* lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
* lisp/net/tramp-smb.el (tramp-smb-handle-write-region): Use it.
* lisp/net/tramp.el (tramp-password-prompt-regexp)
(tramp-completion-mode-p):
* lisp/net/tramp-cmds.el (tramp-reporter-dump-variable)
(tramp-append-tramp-buffers):
* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
Use `bound-and-true-p'.
* lisp/net/tramp-compat.el (tramp-compat-delete-file):
Don't check for `boundp' anymore.
* test/lisp/net/tramp-tests.el (ert-x): Require it.
(tramp--test-messages): New defvar.
(tramp-test10-write-region): Extend test.
YAMAMOTO Mitsuharu [Sun, 7 May 2017 23:20:53 +0000 (08:20 +0900)]
Fix glyph string generation for multi-font compositions (Bug#26742)
* src/xdisp.c (glyph_string_containing_background_width): New function.
(draw_glyphs): Use it to get correct background width.
(compute_overhangs_and_x): Don't change x in the middle of composite
characters.
Philipp Stephani [Sat, 6 May 2017 17:16:49 +0000 (19:16 +0200)]
Fix all unescaped character literals
Alan Mackenzie [Sun, 7 May 2017 09:27:00 +0000 (09:27 +0000)]
CC Mode internal cache: Handle a cache pos being inside a two-char construct.
Cache c-state-semi-nonlit-pos-cache was failing when a cache position was,
e.g., between the two characters of an opening comment "/*", and additionally
there were an odd number of quote marks (apostrophes) in the comment. This
happened in .../src/xdisp.c in the Emacs master branch around 2017-05-02 at
buffer position 615001.
* lisp/progmodes/cc-defs.el (c-emacs-features): Repurpose symbol
pps-extended-state to mean that there are at least 11 elements in the parser
state.
* lisp/progmodes/cc-engine.el (c-cache-to-parse-ps-state)
(c-parse-ps-state-to-cache): Rewrite these to use enhanced cache element list
types which indicate potentially being inside two-char constructs.
(c-parse-ps-state-below): Rewrite to use the new versions of the above two
functions.
Glenn Morris [Sun, 7 May 2017 01:34:36 +0000 (18:34 -0700)]
; Update contributor name
; Ref http://lists.gnu.org/archive/html/emacs-devel/2017-05/msg00114.html
Paul Eggert [Sun, 7 May 2017 01:29:56 +0000 (18:29 -0700)]
; Spelling fixes
Glenn Morris [Sun, 7 May 2017 01:21:04 +0000 (18:21 -0700)]
Silence an mh-compat compiler warning
* lisp/mh-e/mh-compat.el (mh-url-unreserved-chars): Always define.
Glenn Morris [Sun, 7 May 2017 01:20:21 +0000 (18:20 -0700)]
Evaluate mh-require when compiling
* lisp/mh-e/mh-alias.el, lisp/mh-e/mh-folder.el:
* lisp/mh-e/mh-gnus.el, lisp/mh-e/mh-search.el:
Evaluate mh-require when compiling, as require is automatically.
* lisp/mh-e/mh-gnus.el: No longer disable byte-compilation.
Glenn Morris [Sun, 7 May 2017 01:01:34 +0000 (18:01 -0700)]
Remove obsolete method of changing byte-compile-dest-file
* lisp/emacs-lisp/bytecomp.el (byte-compile-dest-file):
Define unconditionally.
Paul Eggert [Sun, 7 May 2017 01:00:23 +0000 (18:00 -0700)]
New var write-region-verbose, default nil
By popular demand, write-region char counts are now off by default
(Bug#26796).
* src/fileio.c (write-region-verbose): New Lisp var.
(write_region): Output char count only if the var is non-nil.
* doc/emacs/files.texi (Misc File Ops), etc/NEWS: Document this.
Glenn Morris [Sun, 7 May 2017 00:58:20 +0000 (17:58 -0700)]
Write autoloads file atomically
* lisp/emacs-lisp/autoload.el (autoload--save-buffer):
New function, to save buffer atomically.
(autoload-save-buffers, update-directory-autoloads):
Use autoload--save-buffer.
* lisp/Makefile.in ($(lisp)/loaddefs.el):
No longer write to a temp file by hand.
Glenn Morris [Sun, 7 May 2017 00:07:10 +0000 (17:07 -0700)]
Write autoloads file once only
* lisp/emacs-lisp/autoload.el (autoload-find-generated-file):
Simplify. Don't bother about ensuring the output file exists.
(autoload-generated-file): Add doc.
(autoload-ensure-writable): Update doc.
(autoload-ensure-file-writeable): Handle non-existing file.
(autoload-ensure-default-file): Remove function.
Paul Eggert [Sat, 6 May 2017 22:29:16 +0000 (15:29 -0700)]
Port .gdbinit to GDB 7.11.1 + Python 2.7.12
* src/.gdbinit (Lisp_Object_Printer.to_string):
Explicitly convert integer val to 'int', so that
older GDBs do not complain about the conversion.
* src/lisp.h (Lisp_Object) [CHECK_LISP_OBJECT_TYPE]:
Give the struct a tag, so that older GDB pretty-printers have a
tag to hang their hat on.
Paul Eggert [Sat, 6 May 2017 21:24:12 +0000 (14:24 -0700)]
Pretty-print const Lisp_Objects in .gdbinit
* src/.gdbinit (Emacs_Pretty_Printers.__call__):
Compare unqualified type to Lisp_Object, to do the right thing
when the expression has type ‘Lisp_Object const’.
Problem reported by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2017-05/msg00138.html
Paul Eggert [Sat, 6 May 2017 21:21:19 +0000 (14:21 -0700)]
Pacify GCC setjmp/longjmp warning
* src/eval.c (internal_lisp_condition_case): Do not modify local
var VAR, to pacify GCC’s setjmp/longjmp warning which in some
cases mistakenly diagnoses VAR possibly being modified between a
setjmp and a longjmp.
Philipp [Sat, 6 May 2017 21:19:22 +0000 (23:19 +0200)]
Fix bootstrap build of files.el
* lisp/files.el (file-name-non-special): Don't use cl-letf.
Noam Postavsky [Sat, 6 May 2017 20:20:57 +0000 (16:20 -0400)]
; INSTALL.REPO: Mention cases that 'make bootstrap' can't handle (Bug#26246).
Eli Zaretskii [Sat, 6 May 2017 20:23:36 +0000 (23:23 +0300)]
; Fix last change
* test/src/emacs-module-tests.el (module-function-object): Fix thinko
in last change.
Eli Zaretskii [Sat, 6 May 2017 20:00:34 +0000 (23:00 +0300)]
Fix last change for MS-Windows
* test/src/emacs-module-tests.el (module-function-object): Port to
MS-Windows.
Eli Zaretskii [Sat, 6 May 2017 19:54:45 +0000 (22:54 +0300)]
; * src/alloc.c (make_module_function): Avoid compiler warning.
Philipp Stephani [Sat, 22 Apr 2017 16:04:29 +0000 (18:04 +0200)]
Introduce new misc type for module function
This resolves a couple of FIXMEs in emacs-module.c.
* src/lisp.h (MODULE_FUNCTIONP, XMODULE_FUNCTION): New functions.
* src/alloc.c (make_module_function): New function.
(mark_object): GC support.
* src/data.c (Ftype_of, syms_of_data): Handle module function type.
* src/print.c (print_object): Print support for new type.
* src/emacs-module.c (module_make_function, Finternal_module_call):
Use new module function type, remove FIXMEs.
(module_format_fun_env): Adapt and give it external linkage.
* test/src/emacs-module-tests.el (module-function-object): Add unit
test.
Philipp Stephani [Fri, 21 Apr 2017 22:12:23 +0000 (00:12 +0200)]
Fix quoted files for 'verify-visited-file-modtime'
Fixes Bug#25951.
* lisp/files.el (file-name-non-special): Set the file name for the
correct buffer.
* test/lisp/files-tests.el (files-tests--file-name-non-special--buffers):
Add unit test.
(files-tests--with-advice, files-tests--with-temp-file): New helper
macros.
Noam Postavsky [Sat, 6 May 2017 18:03:06 +0000 (14:03 -0400)]
; etc/NEWS: Fix default-frame-alist reference (Bug#26280).
Eli Zaretskii [Sat, 6 May 2017 10:39:36 +0000 (13:39 +0300)]
* src/fileio.c (write_region): Don't say "1 characters". (Bug#26796)
Eli Zaretskii [Sat, 6 May 2017 08:22:44 +0000 (11:22 +0300)]
Turn on GC_CHECK_MARKED_OBJECTS by default under ENABLE_CHECKING
* src/alloc.c (GC_CHECK_MARKED_OBJECTS): Define to 1 by default of
ENABLE_CHECKING is defined.
(mark_object): Test for GC_CHECK_MARKED_OBJECTS being non-zero,
instead of being defined.
Eli Zaretskii [Sat, 6 May 2017 08:06:38 +0000 (11:06 +0300)]
; * lisp/replace.el (query-replace-regexp, replace-regexp): Doc fixes.
Tom Tromey [Thu, 5 Jan 2017 14:11:06 +0000 (07:11 -0700)]
Fix erc-join with channel password
Bug#25349
* lisp/erc/erc-join.el (erc-autojoin-after-ident): Switch order of
server names.
(erc-autojoin-channels, erc-autojoin-add, erc-autojoin-remove):
Likewise.
(erc-server-join-channel): Move to erc.el.
* lisp/erc/erc.el (erc-server-join-channel): Move from erc-join.el.
(erc-cmd-JOIN): Use erc-server-join-channel.
Tino Calancha [Sat, 6 May 2017 03:30:48 +0000 (12:30 +0900)]
Ensure the created temp file in a test is new
* test/lisp/buff-menu-tests.el (buff-menu-24962): Use `make-temp-file'
to create the temp file.
Glenn Morris [Sat, 6 May 2017 01:44:09 +0000 (21:44 -0400)]
Decruftify dns-mode.el a little bit
* lisp/textmodes/dns-mode.el (dns-mode-control-entities):
New constant.
(dns-mode-control-entity, dns-mode-bad-control-entity)
(dns-mode-type, dns-mode-class): New faces.
(dns-mode-control-entity-face, dns-mode-bad-control-entity-face)
(dns-mode-type-face, dns-mode-class): Make these variables use the
new faces, and mark as obsolete.
(dns-mode-font-lock-keywords): Use dns-mode-control-entities.
Paul Eggert [Fri, 5 May 2017 22:59:24 +0000 (15:59 -0700)]
Pretty-print Lisp_Object values in GDB
* src/.gdbinit: Add a pretty-printer for Lisp_Object values. Now,
GDB displays them as "XIL(0xXXX)" rather than displaying them
as "..." when CHECK_LISP_OBJECT_TYPE is in effect and as "DDDDD"
otherwise.
Peder O. Klingenberg [Fri, 5 May 2017 18:03:04 +0000 (14:03 -0400)]
Tweak dns-mode font-lock
* lisp/textmodes/dns-mode.el (dns-mode-font-lock-keywords):
Highlight $TTL as a control entity. (Bug#26780)
Glenn Morris [Fri, 5 May 2017 06:15:53 +0000 (23:15 -0700)]
Fontify the doc-string in some CL forms as such
* lisp/emacs-lisp/lisp-mode.el (defconstant, defparameter):
Add the doc-string-elt property. (Bug#26778)
Glenn Morris [Fri, 5 May 2017 05:26:17 +0000 (22:26 -0700)]
* lisp/emacs-lisp/cl-lib.el (cl-mapcar): Remove recent autoload cookie.
Dmitry Gutov [Fri, 5 May 2017 00:43:07 +0000 (03:43 +0300)]
cl-defmethod: Make the edebug spec more technically correct
* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Denote the
edebug spec part for qualifiers as [&rest atom], per
http://lists.gnu.org/archive/html/emacs-devel/2017-05/msg00053.html.
Mike Kupfer [Thu, 4 May 2017 22:30:17 +0000 (14:30 -0800)]
Fix MH-E not to load cl at runtime (Bug#25552)
* lisp/mh-e/mh-acros.el (defun-mh): Check at runtime, not
compile time, whether the target is bound.
* lisp/mh-e/mh-compat.el: Enable compilation. Pull in
mh-acros at compile time.
Authored-by: Glenn Morris <rgm@gnu.org>, Noam Postavsky
<npostavs@users.sourceforge.net>
Jean-Christophe Helary [Thu, 4 May 2017 18:32:40 +0000 (20:32 +0200)]
Multiline support in NS "Open Selected File" service.
* lisp/term/ns-win.el (ns-open-file-service): new function. Wraps the
original call in a (split-string) to create as many calls as there
are lines.
(ns-spi-service-call): Call `ns-open-file-service' instead of
`dnd-open-file'.
Dmitry Gutov [Thu, 4 May 2017 15:26:46 +0000 (18:26 +0300)]
; xref-collect-matches: Add a TODO
Eli Zaretskii [Thu, 4 May 2017 15:11:53 +0000 (18:11 +0300)]
; Remove redundant definition of the 'DebPrint' macro
* nt/inc/ms-w32.h (DebPrint): Remove redundant definition (defined
in src/conf_post.h).
Göktuğ Kayaalp [Thu, 4 May 2017 12:46:13 +0000 (15:46 +0300)]
Require cl-lib at runtime in vc-hg
* lisp/vc/vc-hg.el: Require cl-lib at runtime as well (bug#26609).
Tino Calancha [Thu, 4 May 2017 10:47:45 +0000 (19:47 +0900)]
Inherit incompatible/obsolete package faces from error
Don't use the same face for installed packages as for incompatible
or obsolete ones.
* lisp/emacs-lisp/package.el (package-status-incompat): Inherit from error.
Michael Albinus [Thu, 4 May 2017 10:21:32 +0000 (12:21 +0200)]
Set process property `adjust-window-size-function' to `ignore' in Tramp
* lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
(tramp-adb-maybe-open-connection):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
(tramp-maybe-open-connection):
* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
(tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
(tramp-smb-maybe-open-connection): Set process property
`adjust-window-size-function' to `ignore'.
Nicolas Petton [Thu, 4 May 2017 09:34:41 +0000 (11:34 +0200)]
* lisp/emacs-lisp/seq.el: Bump seq version.
Damien Cassou [Mon, 17 Apr 2017 09:01:39 +0000 (11:01 +0200)]
Add seq-set-equal-p to test for set equality
* lisp/emacs-lisp/seq.el (seq-set-equal-p): Add function to compare
two lists as if they were sets.
* test/lisp/emacs-lisp/seq-tests.el (test-seq-set-equal-p): Add test
for seq-set-equal-p.
Paul Eggert [Thu, 4 May 2017 01:21:20 +0000 (18:21 -0700)]
Spelling fixes
* lisp/gnus/nndiary.el (nndiary-last-occurrence):
Rename from nndiary-last-occurence.
(nndiary-next-occurrence):
Rename from nndiary-next-occurence. All uses changed.
Paul Eggert [Thu, 4 May 2017 01:18:56 +0000 (18:18 -0700)]
Merge from pkg-config
* m4/pkg.m4: Copy from pkg-config 0.29.1.
Tom Tromey [Wed, 25 Jan 2017 07:53:49 +0000 (00:53 -0700)]
Add color highlighting to css-mode
Bug#25525
* lisp/textmodes/css-mode.el (css--color-map): New constant.
(css-value-class-alist): Use css--color-map.
(css--number-regexp, css--percent-regexp)
(css--number-or-percent-regexp, css--angle-regexp): New constants.
(css--color-skip-blanks, css--rgb-color, css--hsl-color): New
functions.
(css--colors-regexp): New constant.
(css--hex-color, css--named-color, css--compute-color)
(css--contrasty-color, css--fontify-colors)
(css--fontify-region): New functions.
(css-mode): Set font-lock-fontify-region-function.
(css-mode-syntax-table): Set syntax on more characters.
(css-fontify-colors): New defcustom.
(scss-mode-syntax-table): Define syntax for ?$ and ?%.
* test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
Update.
(css-test-rgb-parser, css-test-hsl-parser)
(css-test-named-color): New tests.
* etc/NEWS: Add entry.
Michael Albinus [Wed, 3 May 2017 19:49:32 +0000 (21:49 +0200)]
Fix Bug#26763
* lisp/files.el (delete-directory): Call file name handler
with `trash' argument.
* lisp/net/ange-ftp.el (ange-ftp-delete-directory):
* lisp/net/tramp-sh.el (tramp-sh-handle-delete-directory):
Add TRASH arg. Implement it. (Bug#26763)
(tramp-get-remote-trash): Check for `delete-by-moving-to-trash'.
* lisp/net/tramp-adb.el (tramp-adb-handle-delete-directory):
* lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
Add _TRASH arg.
Paul Eggert [Tue, 2 May 2017 22:04:54 +0000 (15:04 -0700)]
Use ptrdiff_t, not int, for stack sizes
* src/thread.c (invoke_thread_function):
* src/xterm.c (x_cr_export_frames):
Don’t assume SPECPDL_INDEX fits in ‘int’.
Paul Eggert [Tue, 2 May 2017 21:52:21 +0000 (14:52 -0700)]
Check list object type if --enable-gcc-warnings
* configure.ac (--enable-check-lisp-object-type):
Default to "yes" if --enable-gcc-warnings is not "no".
* etc/NEWS: Mention this.
* src/eval.c (internal_lisp_condition_case): Fix some glitches
with 'volatile' uncovered by the above: in particular, 'clauses'
should be a pointer to volatile storage on the stack, and need not
be volatile itself. Use an int, not ptrdiff_t, to count clauses.
Don’t bother gathering binding count if VAR is nil. Use
more-specific local names to try to clarify what’s going on.
Glenn Morris [Tue, 2 May 2017 20:59:51 +0000 (16:59 -0400)]
Tweak auth-source-pass.el to avoid run-time subr-x
* lisp/auth-source-pass.el (auth-source-pass--parse-data):
Avoid needing subr-x at run-time.
Charles A. Roelli [Thu, 27 Apr 2017 18:44:09 +0000 (20:44 +0200)]
Constrain non-child frames to screen area in OS X
* src/nsterm.m (constrainFrameRect:toScreen:): Constrain non-child
frames in OS X, if they would otherwise go offscreen.
Fixes: debbugs:25818
Michael Albinus [Tue, 2 May 2017 14:30:55 +0000 (16:30 +0200)]
Fix error in completion for separate Tramp syntax
* lisp/net/tramp.el (tramp-completion-file-name-regexp-separate):
Tweak regexp.
* test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
Run method and host name completion for all syntaxes.
Eli Zaretskii [Tue, 2 May 2017 08:04:33 +0000 (11:04 +0300)]
Avoid compilation warnings
* src/w32fns.c (Fx_file_dialog, w32_parse_and_hook_hot_key):
* src/w32term.c (x_draw_glyph_string):
* src/w32fns.c (compute_tip_xy):
* src/w32font.c (w32font_text_extents):
* src/w32menu.c (set_frame_menubar):
* src/search.c (Freplace_match): Avoid compiler warnings in
optimized builds.